package com.roads.site.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.roads.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 劳务工-从业记录对象 site_labour_staff_record
 *
 * @author nhp
 * @date 2022-11-07
 */
public class SiteLabourStaffRecord extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 自增主键
     */
    private Integer id;

    /**
     * 劳务工ID
     */
    private Integer staffId;

    /**
     * 身份证号
     */
    private String idNo;

    /**
     * 标段编码
     */
    private String institutionCode;

    /**
     * 进场日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date enterDate;

    /**
     * 退场日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date exitDate;

    /**
     * 施工队伍ID
     */
    private Integer battalionId;

    /**
     * 施工班组ID
     */
    private Integer teamId;

    /**
     * 岗位工种ID
     */
    private Integer postId;

    /**
     * 是否班组长 Y：是 N：否
     */
    private String isMonitor;

    /**
     * 状态
     */
    private String status;

    /**
     * 标段名称
     */
    private String institutionName;

    /**
     * 施工队伍
     */
    private String battalionName;

    /**
     * 施工班组
     */
    private String teamName;

    /**
     * 岗位工种
     */
    private String postName;


    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getId() {
        return id;
    }

    public void setStaffId(Integer staffId) {
        this.staffId = staffId;
    }

    public Integer getStaffId() {
        return staffId;
    }

    public void setIdNo(String idNo) {
        this.idNo = idNo;
    }

    public String getIdNo() {
        return idNo;
    }

    public void setInstitutionCode(String institutionCode) {
        this.institutionCode = institutionCode;
    }

    public String getInstitutionCode() {
        return institutionCode;
    }

    public void setEnterDate(Date enterDate) {
        this.enterDate = enterDate;
    }

    public Date getEnterDate() {
        return enterDate;
    }

    public void setExitDate(Date exitDate) {
        this.exitDate = exitDate;
    }

    public Date getExitDate() {
        return exitDate;
    }

    public void setBattalionId(Integer battalionId) {
        this.battalionId = battalionId;
    }

    public Integer getBattalionId() {
        return battalionId;
    }

    public void setTeamId(Integer teamId) {
        this.teamId = teamId;
    }

    public Integer getTeamId() {
        return teamId;
    }

    public void setPostId(Integer postId) {
        this.postId = postId;
    }

    public Integer getPostId() {
        return postId;
    }

    public void setIsMonitor(String isMonitor) {
        this.isMonitor = isMonitor;
    }

    public String getIsMonitor() {
        return isMonitor;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getStatus() {
        return status;
    }

    public String getInstitutionName() {
        return institutionName;
    }

    public void setInstitutionName(String institutionName) {
        this.institutionName = institutionName;
    }

    public String getBattalionName() {
        return battalionName;
    }

    public void setBattalionName(String battalionName) {
        this.battalionName = battalionName;
    }

    public String getTeamName() {
        return teamName;
    }

    public void setTeamName(String teamName) {
        this.teamName = teamName;
    }

    public String getPostName() {
        return postName;
    }

    public void setPostName(String postName) {
        this.postName = postName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("staffId", getStaffId())
                .append("idNo", getIdNo())
                .append("institutionCode", getInstitutionCode())
                .append("enterDate", getEnterDate())
                .append("exitDate", getExitDate())
                .append("battalionId", getBattalionId())
                .append("teamId", getTeamId())
                .append("postId", getPostId())
                .append("isMonitor", getIsMonitor())
                .append("status", getStatus())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }

}
